package workqueues;

import com.aruba.utils.RBConnectionUtil;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import org.junit.Test;

public class Publisher {

    private static final String QUEUE_NAME = "work";

    @Test
    public void publisher() throws Exception {
        //1. 获取连接对象
        Connection connection = RBConnectionUtil.getConnection();

        //2. 创建信道
        Channel channel = connection.createChannel();

        //3. 构建队列  参数：队列名 是否持久化 是否排外（只允许一个消费者） 长时间未使用是否自动删除 其他参数
        channel.queueDeclare(QUEUE_NAME, false, false, false, null);

        //4. 发送消息
        for (int i = 0; i < 10; i++) {
            //参数： 交换机（默认为""） routing-Key（默认交换机就是队列名） 消息其他参数  消息
            channel.basicPublish("", QUEUE_NAME, null, String.valueOf(i).getBytes());
        }
    }

}
